package com.Dec_Four;

/**
 * 754. 到达终点数字
 * 在一根无限长的数轴上，你站在0的位置。终点在target的位置。
 *
 * 你可以做一些数量的移动 numMoves :
 *
 * 每次你可以选择向左或向右移动。
 * 第 i 次移动（从  i == 1 开始，到 i == numMoves ），在选择的方向上走 i 步。
 * 给定整数 target ，返回 到达目标所需的 最小 移动次数(即最小 numMoves ) 。
 *
 *  
 *
 * 来源：力扣（LeetCode）
 * 链接：https://leetcode.cn/problems/reach-a-number
 * 著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
 *
 * 2022/11/04 14:45
 */

public class Solution754 {

    public int reachNumber(int target) {
        int cnt=0,sum=0;
        target=Math.abs(target);
        while (sum<target||(sum-target)%2!=0)
        {
            cnt++;
            sum+=cnt;
        }
        return cnt;
    }

    public static void main(String[] args) {
        Solution754 solution754=new Solution754();
        System.out.println(solution754.reachNumber(5));
    }

}
